package com.wsg.dep.util.office;

/**
 * @className: ReportDemo
 * @author: 承泽
 * @date: 2025/3/25 11:17
 * @description:
 */
public class ReportDemo {
    public static void main(String[] args) {
        generatorDoc(new WordGenerator(),"ReportGenerator.docx");
        generatorDoc(new PdfGenerator(),"ReportGenerator.pdf");
    }

    public static void generatorDoc(ReportGenerator generator, String fileName) {
        String filePath = "D:\\tmp";
        generator.startCreate(filePath, fileName);

        generator.addTitleCenter("目录", TitleLevel.H1);
        generator.addCatalog("第一章、概述", TitleLevel.H1);
        generator.addCatalog("1.1、 介绍", TitleLevel.H2);
        generator.addCatalog("1.2、 总览", TitleLevel.H2);
        generator.addCatalog("1.3、 摘要", TitleLevel.H2);
        generator.addCatalog("第二章、先进的报告生成模式", TitleLevel.H1);
        generator.addCatalog("2.1、 前置", TitleLevel.H2);
        generator.addCatalog("2.2、 表格", TitleLevel.H2);
        generator.addCatalog("2.3、 段落", TitleLevel.H2);


        // 新增一个分页
        generator.addPageBreak();

        // 新增一个段落
        generator.addTitle("第一章、概述", TitleLevel.H1);

        generator.addParagraph("简单介绍下...", false, true);

        generator.addTitle("1.1、 介绍", TitleLevel.H2);
        generator.addParagraph("简单介绍下...", false, false);
        generator.addParagraph("简单介绍下...", false, false);
        generator.addParagraph("简单介绍下...", false, false);

        generator.addTitle("1.2、 总览", TitleLevel.H2);
        generator.addParagraph("简单介绍下...", false, false);

        generator.addTitle("1.3、 摘要", TitleLevel.H2);
        generator.addParagraph("简单介绍下...", false, false);

        generator.addPageBreak();

        generator.addTitle("第二章、先进的报告生成模式", TitleLevel.H1);
        generator.addParagraph("简单介绍下...", false, false);


        generator.addTitle("2.1、 前置", TitleLevel.H2);
        generator.addParagraph("简单介绍下...", false, false);

        generator.addTitle("2.1.1、 先进个人", TitleLevel.H3);
        generator.addParagraph("简单介绍下...", false, false);
        generator.addTitle("2.1.2、 先进集体", TitleLevel.H3);
        generator.addParagraph("简单介绍下...", false, false);
        generator.addTitle("团队由来", TitleLevel.H4);
        generator.addParagraph("简单介绍下...", false, false);
        generator.addTitle("团队历史", TitleLevel.H4);
        generator.addParagraph("简单介绍下...", false, false);
        generator.addTitle("1999~2001", TitleLevel.H5);
        generator.addParagraph("简单介绍下...", false, false);
        generator.addTitle("2002~至今", TitleLevel.H5);
        generator.addParagraph("简单介绍下...", false, false);

        generator.addTitle("不忘初心", TitleLevel.H4);
        generator.addParagraph("简单介绍下...", false, false);


        generator.addTitle("2.2、 表格", TitleLevel.H2);
        generator.addParagraph("简单介绍下...", false, false);

        // 新增一个表格
        TableInfo tableInfo = new TableInfo(5, 3);
        tableInfo.setHead("姓名", "年龄", "性别");
        tableInfo.addRow("张三", "24", "男");
        tableInfo.addRow("王五", "25", "男");
        tableInfo.addRow("Seven", "26", "女");
        tableInfo.addRow("David", "27", "女");
        generator.addTable(tableInfo);


        generator.addTitle("2.3、 段落", TitleLevel.H2);
        generator.addParagraph("简单介绍下...", false, false);


        // 生成并导出文件
        generator.export();
    }
}
